//获取接口数据
import { reqGetSearchInfo } from "@/api"

//准备actions 用于响应组件中的动作
const actions={
    //获取search模块数据
   async getSearchList({commit},params){
       //params形参：是当用户派发action的时候，第二个参数传递过来的，至少是一个空对象
        let result=await reqGetSearchInfo(params);
        if(result.code==200){
            commit('GETSEARCHLIST',result.data);
        }
    }
}
//准备mutations 用于操作数据（state）
const mutations={
    GETSEARCHLIST(state,searchList){
        //给state保存得到的数据searchList
        state.searchList=searchList; 
    }
}
//准备state 用于存储数据
const state={
    searchList:{}
}
//准备getters 用于将state中的数据进行加工
//可以把我们将来在组件当中需要用的数据简化一下【将来组件获取数据就简单了】
const getters={
    //当前形参state，当前仓库中的state
    goodsList(state){
        //假如网络不给力，没有网state.searchList.goodsList这个返回会出现undfinde所以咱们为避免这个情况给他来个[]空对象       
        return state.searchList.goodsList||[];
    },
    trademarkList(state){
        return state.searchList.trademarkList;
    },
    attrsList(state){
        return state.searchList.attrsList;
    }
}

export default{
    actions,
    mutations,
    state,
    getters
}